// 导入 unocss
import "@unocss/reset/tailwind.css";
import "virtual:uno.css";
// 插入 svg sprite 注册
import "virtual:svg-icons-register";
// 导入 vue
import { createApp } from "vue";
// 导入状态管理
import { createPinia } from "pinia";
import App from "./App.vue";

import router from "./router";
import { setupStore } from "./stores";

// 自定义指令
import { setupDirectives } from "./pkg";

async function bootstrap() {
  const app = createApp(App);
  // 注册状态管理
  setupStore(app);
  // 自定义指令
  setupDirectives(app);

  // 注册路由
  app.use(router);
  // 路由准备就绪后挂接 APP 实例
  await router.isReady();
  // 挂载
  app.mount("#app");
}

bootstrap();
